package com.patterns.singleton;

/**
 * 饿汉式单例类:在类初始化时，已经自行实例化。
 * 类加载到内存后，就实例化一个单例，JVM保证线程安全
 * 简单使用，推荐使用！
 * 唯一缺点：不管用到是否，类加载的时候就完成实例化
 * @author fwj
 * @date 2020/12/8 14:45
 **/
public class HungrySingleton {
    private static final HungrySingleton instance = new HungrySingleton();

    //私有的构造函数，不能再其他地方new出来
    private HungrySingleton() {
    }

    public static HungrySingleton getInstance() {
        return instance;
    }

    public static void main(String[] args) {
        //验证是否是同一个对象
        HungrySingleton h1 = HungrySingleton.getInstance();
        HungrySingleton h2 = HungrySingleton.getInstance();
        System.out.println(h1 == h2);
    }
}
